<?php
require_once (__DIR__ . "/../conf/config.php");
require_once (__DIR__ . "/../funciones.php");
require_once('Tools.php');
class Compra {
       public $id;
	public $aDefinition = array (
			"tabla" => "COMPRAS",
			"primary_key" => "ID_COMPRA",
                        "id_compra" => null,
			"cod_categoria" => null,
			"cod_subcategoria" => null,
			"numero_unidades" => 0,
			"fecha_compra" => 0,
			"id_usuario" => null,
			"tipo_tarjeta" => null,
                        "num_tarjeta" => null,
                        "nombre_ent_tarjeta" => null,
                        "fecha_cad_tarjeta" => null,
	);
	/**
	 * Constructor por defecto
	 * Si recibe las primary key del CLIENTE, muestra informacion asociada
	 * Si no recibe parametros se crea un producto nuevo
	 */
	public function __construct($id_compra = null) {
		if (isset ( $id_cliente )) {
			$con = abrirConexion ();
			$sql = "SELECT *
                                FROM COMPRAS
                                WHERE `ID_COMPRA` = " . ( int ) $id_compra;
                                // return $sql;
                                if ($res = mysqli_query ( $con, $sql )) {
                                    while ( $tupla = mysqli_fetch_array ( $res ) ) {
                                            $this->aDefinition ["id_compra"] = $tupla ['ID_COMPRA'];
                                            $this->aDefinition ["cod_categoria"] = $tupla ['COD_CATEGORIA'];
                                            $this->aDefinition ["cod_subcategoria"] = $tupla ['COD_SUBCATEGORIA'];
                                            $this->aDefinition ["numero_unidades"] = $tupla ['NUMERO_UNIDADES'];
                                            $this->aDefinition ["fecha_compra"] = $tupla ['FECHA_COMPRA'];
                                            $this->aDefinition ["id_usuario"] = $tupla ['ID_USUARIO'];
                                            $this->aDefinition ["tipo_tarjeta"] = $tupla ['TIPO_TARJETA'];
                                            $this->aDefinition ["num_tarjeta"] = $tupla ['NUM_TARJETA'];
                                            $this->aDefinition ["nombre_ent_tarjeta"] = $tupla ['NOMBRE_ENT_TARJETA'];
                                            $this->aDefinition ["fecha_cad_tarjeta"] = $tupla ['FECHA_CAD_TARJETA'];
                                            // $this->aDefinition["nombre"] =>
                                    }
				cerrarConexion ( $con );
                                }
		}
	}
	/**
	 * devuelve el elemento de la matriz que se pasa por parametro
	 * 
	 * @param
	 *        	string
	 *        	return string
	 */
	public function __get($atributo) {
		if (isset ( $this->aDefinition [$atributo] )) {
			return $this->aDefinition [$atributo];
		} else {
			return false;
		}
	}
	
	/**
	 * establece un valor a la matriz
	 * 
	 * @param
	 *        	string elemento de la matriz
	 * @param
	 *        	valor que se asigna a la matriz
	 */
	public function __set($atributo, $valor) {
		if (isset ( $this->aDefinition [$atributo] )) {
			$this->aDefinition [$atributo] = $valor;
		}
	}
        public function addCompra($cod_categoria, $cod_subcat,
                                  $unidades, $fecha, $id_usuario,
                                  $tipo_tarjeta = "VISA", $num_tarjeta = "null",
                                  $nom_en_tarjeta = "Pago por Pay-Pal", $cad_tarjeta = "null")
        {
            $con = abrirConexion();
            $sql = 'INSERT INTO `COMPRAS` (`COD_CATEGORIA`,`COD_SUBCATEGORIA`, `NUMERO_UNIDADES`, 
            `FECHA_COMPRA`, `ID_USUARIO`, `TIPO_TARJETA`, `NUM_TARJETA`, `NOMBRE_ENT_TARJETA`, `FECHA_CAD_TARJETA` 
            ) VALUES (' . $cod_categoria. ', ' . $cod_subcat. ', '. $unidades. ', "' . $fecha. '", ' . $id_usuario. ', "' . $tipo_tarjeta.
             '", ' . $num_tarjeta. ', "' . $nom_en_tarjeta. '", ' . $cad_tarjeta.')';
                 //return $sql; 
                if (!$res = mysqli_query ( $con, $sql ))
                {
                    echo "Error anadir  nueva compra";
                }
        }
	
}
?>